/*
 * IUserService.java
 *
 * Copyright 2012 the original author or authors(ninglong).
 *
 * Licensed under the web-geek, Version 1.0 (the "License");
 *
 */
package org.geek.app.user.service;

import java.util.List;

import org.geek.core.mybatis.domain.Criteria;
import org.geek.core.mybatis.domain.User;

/**   
 * <p>用户服务接口</p>
 * @author ninglong bhd2973@qq.com   
 * @version V1.0   
 */
public interface IUserService {
	
	/**
	 * 根据账号得到用户
	 * 
	 * @param loginName 
	 * 				账号
	 * @return 用户
	 */
	User getUserByAccount(String account);
	
	/**根据得到用户
	 * 
	 * @param criteria 
	 * 			查询条件
	 * @return 用户
	 */
	List<User> getUserByCriteria(Criteria criteria);
	
	/**根据条件取用户总数
	 * 
	 * @param criteria 
	 * 			查询条件
	 * @return 用户数
	 */
	int countUserByCriteria(Criteria criteria);
	
	/**
	 * @param user 被保存的用户
	 * @return >0成功
	 */
	int addUser(User user);
	
	/**
	 * @param user 被保存的用户
	 * @return >0成功
	 */
	int modUser(User user);
	
	/**
	 * @param userId 需要删除的用户Id
	 * @return >0成功
	 */
	int delUserByUserId(int userId);
	
	/**
	 * 给用户添加角色
	 * @param roleIds 待添加角色Id
	 * @param userId 
	 * @return
	 */
	int saveRole2User(int userId,String [] roleIds);
}
